import unittest as ut
from .DataString import *
from .Element.UT.UT_Base import *
from .AcpMsg import *

class MessageTestCase(AcpTestCase):
    def _ParseRvfc(self, str):
        message = CRvfcMsg()
        dataStr = CDataString(str)
        message.Parse(dataStr)
        self._Show(message)

    def test_rvfcSvtStartMsg(self):
        self._ParseRvfc("0602313b040c80010103010101030201002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcSvtStopMsg(self):
        self._ParseRvfc("0602313b040c80010103010000030301002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcRdcUnlockMsg(self):
        self._ParseRvfc("0602313b040c800101030b0000030301002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcRdcLockMsg(self):
        self._ParseRvfc("0602313b040c800101030b0000030201002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcGeoCancelMsg(self):
        self._ParseRvfc("0602313b040c80010103040000030301112028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcSpdCancelMsg(self):
        self._ParseRvfc("0602313b040c80010103060000030301012028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcAlmEnableMsg(self):
        self._ParseRvfc("0602313b040c80010103110000030201002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcAlmDisableMsg(self):
        self._ParseRvfc("0602313b040c80010103110000030301002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcManEnableMsg(self):
        self._ParseRvfc("0602313b040c800101030f0000030201002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcManDisableMsg(self):
        self._ParseRvfc("0602313b040c800101030f0000030301002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcMilEnableMsg(self):
        self._ParseRvfc("0602313b040c80010103100000030201002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

    def test_rvfcMilDisableMsg(self):
        self._ParseRvfc("0602313b040c80010103100000030301002028a010514a4e384844313653364b573333333333335338393031363530393037303030343131323830")

def suite():
    suite = ut.TestSuite()
    msgSuite = ut.TestLoader().loadTestsFromTestCase(MessageTestCase)
    suite.addTest(msgSuite)
    return suite
